package model

import "time"

type AppMenu struct {
	ID         int64     `gorm:"primaryKey;autoIncrement;column:id;comment:主键id" json:"id"`
	AddDate    time.Time `gorm:"column:add_date;type:datetime(6);default:NULL;comment:添加时间" json:"add_date"`
	Code       string    `gorm:"column:code;size:50;default:NULL;index:idx_code;comment:编码" json:"code"`
	Depth      int       `gorm:"column:depth;type:int(10);default:NULL;comment:深度" json:"depth"`
	IDs        string    `gorm:"column:ids;size:255;default:NULL;index:idx_ids;comment:ids" json:"ids"`
	LastDate   time.Time `gorm:"column:last_date;type:datetime(6);default:NULL;comment:最新修改时间" json:"last_date"`
	Lft        int       `gorm:"column:lft;type:int(10);default:NULL;comment:左节点" json:"lft"`
	Name       string    `gorm:"column:name;size:255;default:NULL;index:idx_name;comment:名称" json:"name"`
	Rgt        int       `gorm:"column:rgt;type:int(10);default:NULL;comment:右节点" json:"rgt"`
	SortNum    int       `gorm:"column:sort_num;type:int(10);default:NULL;comment:排序号" json:"sort_num"`
	Catalog    int       `gorm:"column:catalog;type:int(10);default:NULL;comment:分类" json:"catalog"`
	Creator    int64     `gorm:"column:creator;type:bigint(19);default:NULL;comment:创建人id" json:"creator"`
	Icon       string    `gorm:"column:icon;size:255;default:NULL;index:idx_icon;comment:图标" json:"icon"`
	MenuType   int       `gorm:"column:menu_type;type:int(10);default:NULL;comment:菜单类型" json:"menu_type"`
	Num        int64     `gorm:"column:num;type:bigint(19);default:NULL;" json:"num"`
	Path       string    `gorm:"column:path;size:255;default:NULL;index:idx_path;comment:路径" json:"path"`
	Permission string    `gorm:"column:permission;size:255;default:NULL;index:idx_permission;comment:权限" json:"permission"`
	Router     string    `gorm:"column:router;size:255;default:NULL;index:idx_router;comment:路由" json:"router"`
	AppID      int64     `gorm:"column:app_id;type:bigint(19);default:NULL;index:FK_app_id;comment:应用" json:"app_id"`
	ParentID   int64     `gorm:"column:parent_id;type:bigint(19);default:NULL;index:FK_parent_id;comment:父菜单id" json:"parent_id"`
}

// TableName 定义表名
func (AppMenu) TableName() string {
	return "sys_app_menu"
}
